GPUs traditionally offer high computational capabilities, frequently higher than their CPU counterparts. While high-end mobile GPUs vendors introduced recently general purpose APIs, such as OpenCL, to leverage their computational power, the vast majority of the mobile devices lack such support. Despite that their graphics APIs have similarities with desktop graphics APIs, they have significant differences, which prevent the use of well-known techniques that offer general-purpose computations over such interfaces. In this paper we show how these obstacles can be overcome, in order to achieve general purpose programmability of these devices. As a proof of concept we implemented our proposal on a real embedded platform (Raspberry Pi) based on Broadcom's VideoCore IV GPU, obtaining a speedup of 7.2× over the CPU.
展开▼
机译:传统上,GPU提供较高的计算能力,通常高于其CPU。尽管高端移动GPU厂商最近推出了通用API(例如OpenCL)来利用其计算能力,但绝大多数移动设备都缺乏这种支持。尽管它们的图形API与台式机图形API有相似之处,但是它们却有显着差异,这妨碍了使用众所周知的通过此类接口提供通用计算的技术。在本文中,我们展示了如何克服这些障碍,以实现这些设备的通用可编程性。作为概念验证,我们在基于Broadcom的VideoCore IV GPU的真实嵌入式平台(Raspberry Pi)上实现了我们的建议,使CPU的速度提高了7.2倍。
展开▼